草庐IT

Where 条件

全部标签

node.js - 如何使用 Mongoose 中的条件按特定年份分组

我必须使用mongoosegroupby和聚合函数来计算特定年份的数量,但我没有使用条件来对特定年份进行分组,我必须使用下面的代码,Opp.aggregate([{$project:{_id:{year:{$year:'$HireDate'}},hireDateValue:{year:{$year:'$HireDate'}},hireDateCount:{$cond:[{"$and":[{"$or":[{"$eq":["$HireDate","1994-01-1700:00:00.000"]}]}]},1,0]}}},{$group:{_id:'$hireDateValue',coun

mongodb - 如果我使用 Mongoose 在匹配条件下传递 _id,为什么批量更新操作不起作用?

我在Mongoose中使用批量更新操作时遇到问题。每当我在匹配条件下传递_id时。它不会更新结果,当我更改_id之外的条件标准时,它工作正常。对此有任何想法。请帮我。这是我的代码varbulk=roleObj.collection.initializeUnorderedBulkOp();bulk.find({_id:'56b9ba46b51a3b2114b0b44e'}).update({$set:{name:'blabla'}});bulk.execute(function(err,data){}); 最佳答案 这是因为您正在调用

MongoDB:“$where 不允许出现在 $match 聚合表达式中

我遇到了这个错误"$whereisnotallowedinsideofa$matchaggregationexpression当我执行以下查询时。varquery={$and:[{"order.orderstatus":"F"},{"partsupp.supplier.nation.name":{$regex:'^SAUDIARABIA'}},{$where:"this.receiptdate>this.commitdate"}]};varmultisupp={$where:function(){returndb.lineitems.findOne({$and:[{"order.ord

node.js - 条件更新,取决于匹配的字段

假设我有一组文档,每个文档都管理着老师和学生之间的讨论:{_id,teacherId,studentId,teacherLastMessage,studentLastMessage}我将使用3个参数进行查询:_id、userId和message。我正在寻找一种方法来根据用户是哪个来更新teacherLastMessage字段或studentLastMessage字段。目前,我有这个:returnPromise.all([//ifuseristeacher,setteacherLastMessagedb.collection('discussions').findOneAndUpdate

node.js - 在 MongoDB 中查找不符合条件的记录

这个问题在这里已经有了答案:MongoDBnotequalto(6个答案)关闭6年前。我需要将条件传递给find方法。但是使用比较运算符!=。在MongoDB中有可能吗?我在docs中看到AND、OR、<、>等运算符,但否定运算符。您是否知道如何获取所有记录,即recordType不等于Message?collection.find({'recordType':'Message'}).toArray(function(err,results){//

MongoDB:如何在 mongodb 中对双元素数字数组的第二个元素设置条件?

我有postgresql和关系数据库的背景,我正在尝试再次给mongo一个机会,因为它似乎适合某些用途。我在这个网站上做练习http://www.w3resource.com/mongodb-exercises/它对具有以下结构的文档进行操作:{"address":{"building":"1007","coord":[-73.856077,40.848447],"street":"MorrisParkAve","zipcode":"10462"},"borough":"Bronx","cuisine":"Bakery","grades":[{"date":{"$date":13938

node.js - DDD + node.js : Where should domain logic go

我正在尝试使用es6将DDD引入到node.js应用程序中。我正在为我的数据访问层使用Mongoose。我注意到Mongoose有一个与模型模式相关的“.methods”属性。就向实体添加业务逻辑而言,这是添加业务逻辑的理想位置,还是我应该考虑创建另一个对象来保存反射(reflect)模型架构对象的业务逻辑,并将数据从一个对象复制到另一个对象?如果我使用sequalize,这里的首选方法是什么? 最佳答案 我不认为这个问题真的有一个明确的答案,但我会给你一些意见。许多DDD相关概念和工具都是围绕OOP语言公开的特性构建的(特别是:接

mongodb - Mongoose 循环遍历 findOneAndUpdate 条件语句

我想知道这部分代码是否可以用不同的方式编写,仅使用模型的Mongoose辅助方法?如果没有股票大于0,我可以返回成功和错误吗?ProductSchema.statics.substractStock=function(products){_.map(products,updateStock)functionupdateStock(o){mongoose.model('Product').findById(o._id,function(err,product){returnproduct}).then(function(productDB){if(productDB.stock>o.st

反伪造令牌种族条件

我有一个应该被iFramed的MVC视图。并且可能在同一主机页面中进行了几个实例。在我看来,我有:@Html.AntiForgeryToken()我试图确保对WebAPI的调用仅来自此页面。我的主机页面可能看起来像这样:在我看来,我抓住令牌并将其提交给标头,以便我可以在API中检查它:varheaders=actionContext.Request.Headers;varheaderToken=headers.Contains("__RequestVerificationToken")?headers.GetValues("__RequestVerificationToken").FirstO

node.js - Mongoose 条件查询 - Case when like 语句

我想创建一个查询来返回给定年份的收入集合。我的架构是这样的:exportconstIncomeSchema=newmongoose.Schema({name:{type:String,required:true},amount:{type:Number,required:true},amountAfterTax:{type:Number,required:false},dateFrom:{month:Number,year:Number},dateTo:{month:Number,year:Number},isMonthly:{type:Boolean,required:true},u